Geolocation এবং GPS দুটি প্রযুক্তি যা মোবাইল অ্যাপ্লিকেশনে ব্যবহারকারীর অবস্থান ট্র্যাক করার জন্য ব্যবহৃত হয়। এই দুটি প্রযুক্তি মোবাইল ডিভাইসের অবস্থান সম্পর্কিত তথ্য সংগ্রহ করতে সহায়ক, কিন্তু তাদের মধ্যে কিছু পার্থক্য রয়েছে। Cordova অ্যাপ্লিকেশন তৈরিতে এই প্রযুক্তি দুটি ব্যবহার করার মাধ্যমে আপনি মোবাইল ডিভাইসের অবস্থান অনুসন্ধান করতে পারেন। চলুন, এই দুটি প্রযুক্তি কীভাবে কাজ করে এবং Cordova অ্যাপে কিভাবে ব্যবহার করা যায় তা আলোচনা করা যাক।
Geolocation এবং GPS এর মধ্যে পার্থক্য
- Geolocation: এটি একটি ব্রাউজার API যা ডিভাইসের অবস্থান খুঁজে বের করতে সাহায্য করে। Geolocation ব্যবহারকারীর অবস্থান নির্ধারণে বিভিন্ন সোর্স ব্যবহার করে যেমন Wi-Fi, IP ঠিকানা, মোবাইল নেটওয়ার্ক ইত্যাদি। এটি নির্ভুলতা অনুসারে বিভিন্ন ফলাফল প্রদান করতে পারে, কারণ এটি শুধুমাত্র GPS ব্যবহার না করে আরও অনেক ভিন্ন উৎস ব্যবহার করে।
- GPS (Global Positioning System): এটি স্যাটেলাইট-ভিত্তিক একটি সিস্টেম যা সঠিক এবং নির্ভুলভাবে ডিভাইসের অবস্থান নির্ধারণ করতে ব্যবহৃত হয়। GPS সিস্টেমের মাধ্যমে ডিভাইসের নির্ভুল স্থান (লংগিচুড এবং ল্যাটিচুড) জানা যায়, যা Geolocation থেকে বেশি নির্ভুল হয়।
Cordova-তে Geolocation এবং GPS ব্যবহার
Cordova একটি Geolocation Plugin সরবরাহ করে, যা মোবাইল ডিভাইসে ব্যবহারকারীর অবস্থান সহজে ট্র্যাক করতে সাহায্য করে। এটি Geolocation API ব্যবহার করে ডিভাইসের অবস্থান তথ্য সংগ্রহ করতে সহায়ক।
১. Geolocation প্লাগইন ইনস্টল করা
প্রথমে, আপনাকে Cordova অ্যাপে Geolocation প্লাগইন ইনস্টল করতে হবে। নিচের কমান্ডটি ব্যবহার করুন:
cordova plugin add cordova-plugin-geolocation২. অবস্থান অ্যাক্সেস করার জন্য কোড লেখা
Geolocation প্লাগইন ইনস্টল করার পর, আপনি আপনার অ্যাপে নিচের কোড ব্যবহার করে ব্যবহারকারীর অবস্থান ট্র্যাক করতে পারবেন:
navigator.geolocation.getCurrentPosition(
function(position) {
console.log("Latitude: " + position.coords.latitude);
console.log("Longitude: " + position.coords.longitude);
},
function(error) {
console.log("Error: " + error.message);
}
);এই কোডটি ব্যবহারকারীর বর্তমান অবস্থান (ল্যাটিচুড এবং লংগিচুড) প্রদর্শন করবে। getCurrentPosition একটি অ্যাসিঙ্ক্রোনাস ফাংশন যা ব্যবহারকারীর অবস্থান পেতে সহায়ক।
৩. অবস্থান আপডেট ট্র্যাক করা
যদি আপনি ব্যবহারকারীর অবস্থান আপডেট ট্র্যাক করতে চান, তাহলে watchPosition ফাংশন ব্যবহার করতে পারেন:
var watchID = navigator.geolocation.watchPosition(
function(position) {
console.log("Latitude: " + position.coords.latitude);
console.log("Longitude: " + position.coords.longitude);
},
function(error) {
console.log("Error: " + error.message);
},
{ enableHighAccuracy: true, maximumAge: 10000, timeout: 5000 }
);এটি ব্যবহারকারীর অবস্থান ক্রমাগত আপডেট করবে। enableHighAccuracy: true সেট করলে ডিভাইস উচ্চ নির্ভুলতায় অবস্থান নির্ধারণ করবে (এটি GPS ব্যবহার করতে পারে)।
৪. অবস্থানকে পেতে সময়সীমা নির্ধারণ করা
কিছু ক্ষেত্রে, আপনাকে অবস্থান নির্ধারণ করার জন্য একটি সময়সীমা (timeout) সেট করতে হতে পারে। উদাহরণস্বরূপ:
navigator.geolocation.getCurrentPosition(
function(position) {
console.log("Latitude: " + position.coords.latitude);
console.log("Longitude: " + position.coords.longitude);
},
function(error) {
console.log("Error: " + error.message);
},
{ timeout: 10000 } // 10 সেকেন্ড সময়সীমা
);এটি ১০ সেকেন্ডের মধ্যে অবস্থান না পেলে ত্রুটি প্রদর্শন করবে।
৫. অবস্থান ফিচার কনফিগারেশন
Geolocation প্লাগইন ব্যবহার করার সময়, আপনি কিছু কনফিগারেশন অপশনও সেট করতে পারেন:
enableHighAccuracy: এটি ডিভাইসকে উচ্চ নির্ভুলতা ব্যবহার করতে বলে (এটি GPS ব্যবহার করতে পারে)।timeout: এটি নির্ধারণ করে যে, কত সময়ের মধ্যে অবস্থান পাওয়া না গেলে ত্রুটি ঘটবে।maximumAge: এটি বলে যে, কত পুরানো অবস্থান তথ্য নেয়া যেতে পারে।
সারাংশ
Geolocation এবং GPS ব্যবহার করে Cordova অ্যাপে ব্যবহারকারীর অবস্থান নির্ধারণ করা অত্যন্ত সহজ। Cordova এর cordova-plugin-geolocation প্লাগইন ব্যবহার করে আপনি একটি নির্ভুল এবং কার্যকরী অবস্থান ট্র্যাকিং সিস্টেম তৈরি করতে পারেন। Geolocation API বিভিন্ন সোর্স ব্যবহার করে অবস্থান শনাক্ত করতে সহায়ক, তবে যদি আপনি আরও নির্ভুল ফলাফল চান তবে GPS ব্যবহার করা উচিৎ।